package weight;

import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;

import com.example.common.R;

/**
 * ltx on 2016/11/7 14:46
 * 无数据页面
 * 加载失败
 */
public class CommonEmptyView extends LinearLayout implements View.OnClickListener {
    private Context mContext;
    private ImageView mIvEmptyContent;//加载失败 跟 空
    private TextView mTvEmpty;//刷新失败
    private ImageView mUpdate;//刷新按钮
    private final static  int TYPE_NOME=0;
    private final static  int TYPE_FAIL=1;

    /**
     * 刷新回调接口
     */
    private UpdateClick mUpdateClick;

    /**
     * 设置搜索回调接口
     *
     * @param mUpDateClick 监听者
     */
    public void setUpDateClick(UpdateClick mUpDateClick) {
        this.mUpdateClick = mUpDateClick;
    }

    public CommonEmptyView(Context mContext) {
        this(mContext, null);
    }

    public CommonEmptyView(Context mContext, AttributeSet attrs) {
        this(mContext, attrs, 0);
    }

    public CommonEmptyView(Context mContext, AttributeSet attrs, int defStyleAttr) {
        super(mContext, attrs, defStyleAttr);
        this.mContext = mContext;
        LayoutInflater.from(mContext).inflate(R.layout.common_empty, this, true);
        mIvEmptyContent= (ImageView) findViewById(R.id.iv_empty_content);
        mTvEmpty= (TextView) findViewById(R.id.tv_empty);
        mUpdate= (ImageView) findViewById(R.id.iv_update);
        mUpdate.setOnClickListener(this);

    }

    @Override
    public void onClick(View v) {
        int i = v.getId();
        if (i == R.id.iv_update) {
            if(null!=mUpdateClick){
                mUpdateClick.onUpdateClick();
            }
        }
    }

    public interface UpdateClick{
        /**
         * 点击刷新按钮的回调
         */
        void onUpdateClick();
    }

    /**
     * 设置图片的内容
     * @param type 0 代表数据位空 1代表加载失败
     */
    public void setImgContent(int type){
        if (type==TYPE_NOME){
            mIvEmptyContent.setImageResource(R.mipmap.bg_none);
//            mUpdate.setVisibility(GONE);
        }else if(type==TYPE_FAIL){
            mIvEmptyContent.setImageResource(R.mipmap.bg_fail);
//            mUpdate.setVisibility(VISIBLE);

        }
    }
    /**
     * 设置加载的失败的文本
     * @param mFailText 失败文本
     */
    public void setFailText(String mFailText){
        mTvEmpty.setText(mFailText);
    }

}
